/*
 * @Autor: dingxiaolin
 * @Date: 2021-07-16 15:09:48
 * @LastEditors: dingxiaolin
 * @LastEditTime: 2021-07-28 17:39:50
 */
import { formatDate } from '@/utils/common'
import { useFormModal } from '@/hooks/useFormModal'
import { getFormSchema } from './form-schema'
import { sysDictTypeDelete, sysDictTypeEdit } from '@/api/system/dict'

export const columns: TableColumn[] = [
    // 字典表格
    {
        title: '类型名称',
        dataIndex: 'name',
        ellipsis: true
    },
    {
        title: '唯一编码',
        dataIndex: 'code'
    },
    {
        title: '排序',
        dataIndex: 'sort'
    },
    // {
    //   title: '最后更新时间',
    //   dataIndex: 'updatedAt',
    //   slots: {
    //     customRender: 'updatedAt'
    //   },
    //   slotsType: 'format',
    //   slotsFunc: (val) => formatDate(val)
    // },
    {
        title: '操作',
        dataIndex: 'action',
        width: 200,
        slots: {
            customRender: 'action'
        }
        // actions: [
        //   {
        //     type: 'popconfirm', // 控制类型，默认为a,可选： select | button | text
        //     text: '删除',
        //     permission: {
        //       // 权限
        //       action: 'delete',
        //       effect: 'disabled'
        //     },
        //     props: {
        //       type: 'danger'
        //     },
        //     func: async ({ record }, refreshTableData) =>
        //       await sysDictTypeDelete(record.id).then(() => refreshTableData())
        //   },
        //   {
        //     type: 'button', // 控制类型，默认为a,可选： select | button | text
        //     text: '编辑',
        //     permission: {
        //       // 权限
        //       action: 'update',
        //       effect: 'disabled'
        //     },
        //     props: {
        //       type: 'warning'
        //     },
        //     func: ({ record }, refreshTableData) =>
        //       useFormModal({
        //         title: '编辑字典',
        //         fields: record,
        //         formSchema: getFormSchema(),
        //         handleOk: async (modelRef, state) =>
        //           await sysDictTypeEdit(record.id, modelRef).then((_) => refreshTableData())
        //       })
        //   }
        // ]
    }
]
